package tests;

import static org.junit.Assert.*;
import org.junit.Test;
import validadores.ValidarStringNoVacio;
import aspectos.ValidadorAspect;
import dominio.Persona;
import exception.ValorInvalidoException;

public class NombreNoVacioTest {

	@Test
	public void noDebePermitirNombresVacios() throws Throwable {
		Persona p4 = new Persona();
		ValidadorAspect.aspectOf().agregarValidador(new ValidarStringNoVacio());
		// ValidadorAspect.aspectOf().agregarValidador(new ValidadorPrueba());
		//p4.setNombre("Nico");
		// assertEquals("Nico", p4.getNombre()); // Se asigna el nombre
		// correctamente
		try {
			p4.setNombre("");
			fail("Debera haber tirado excepcion al asignarle un nombre vacio");
		} catch (ValorInvalidoException e) {

			assertEquals("Nico", p4.getNombre()); // El nombre no cambio

		}

	}
}
